<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //创建对象
        //1、利用变量
        //2、利用new来创建对象
        // var mr = new Object();
        // mr.name = '鸣人';
        // mr.sex = '男';
        // mr.age = 19;
        // mr.skill = function(){
        //     console.log("隐身术");
        // }
        // console.log(mr.name);
        // console.log(mr.sex);
        // console.log(mr.age);
        // mr.skill();

        //3、利用构造函数的方式创建对象。
        //对象中又大量重复的属性和方法
        //通过构造函数可以重复使用这个相同的代码
        //构造函数封装的是对象
        //构造函数中封装的是方法和属性
        //构造函数不需要用return返回
        //构造函数的语法格式


        //注意事项
        //（1）、构造函数的首字母要大写
        //（2）、构造函数不需要return 就可以返回结果
        //（3）、调用构造函数，必须使用new
        //(4)、只需要在new star()调用函数就创建一个对象{}
        //（5）、属性和方法前面需要加thisff
        // function 构造函数名(){
        //     this.属性 = 值;
        //     this.方法 = function(){}
        // }
        // new 构造函数名();

        //实例
        //输出刘德华、张学友的姓名，年龄，功能
        //     function Star(uname,age,sex){
        //         this.name = uname;
        //         this.age = age;
        //         this.sex = sex;
        //         this.sing = function(sang){
        //             console.log(sang);
        //         }

        //     }
        //  var star = new Star('刘德华',16,'男')
        //  star.sing('冷冷的与')
        // console.log(star.name);
        // var ss= new Star('张学友',19,'男')
        // console.log(ss.name);

        //4、遍历对象
        //实例
        // let dx = {
        //     name:'xiao',
        //     age:18,
        //     sex:'男'
        // }
        // for( var k in dx){
        //     console.log(k); //变量的话是属性
        //     console.log(dx[k]); //这样得到的是属性值

        // }
        



    </script>
</body>
</html>